命令行由 Shell 提供,各种命令通过 Shell 传递给操作系统的内核。因此,编写命令行是程序员的必备技能,而 Shell 作为操作命令的必备工具,这份 Awesome 系列希望能帮助程序员更优雅、更高效地使用命令行。
1、fish — 开箱即用的跨平台命令行 Shell
授权协议:GPLv2
操作系统:Linux
项目地址:https://www.oschina.net/p/fishfish 是适用于 Linux、macOS 的命令行 Shell,其名字取于 "the friendly interactive shell" 的简称,最大特点就是方便易用、功能强大、智能并且用户友好。很多其他 Shell 需要配置才有的功能,fish 默认提供,不需要任何配置。2、Windows Terminal — Windows 全新默认终端
授权协议:MIT
操作系统:Windows
项目地址:https://www.oschina.net/p/windows-terminalWindows Terminal 是一个全新的、流行的、功能强大的命令行终端工具。它包含很多来社区呼声很高的特性,例如:多 Tab 支持、富文本、多语言支持、可配置、主题和样式,支持 emoji 和基于 GPU 运算的文本渲染等等。同时该终端依然符合我们的目标和要求,以确保它保持快速、高效,并且不会消耗大量内存和电源。3、Oh My Zsh — Linux 命令行终端必备神器
授权协议:MIT
操作系统:Linux
项目地址:https://www.oschina.net/p/oh-my-zshOh My Zsh 是一个开源、社区驱动的框架,用于管理 Zsh 配置。4、Zsh — Linux Shell 环境
操作系统:Linux
项目地址:https://www.oschina.net/p/zshZ shell 是一个 Linux 用户很少使用的 power-shell,这是由于大多数 Linux 产品安装,以及默认使用 bash shell。几乎每一款 Linux 产品都包含有 zsh,通常可以用 apt-get、urpmi 或 yum 进行安装。5、PowerShell — 命令行外壳和脚本环境授权协议:MIT
操作系统:跨平台
项目地址:https://www.oschina.net/p/powershellPowerShell 是一个跨平台的 (Windows, Linux 和 OS X) 自动化和配置工具(框架),可以和已有的工具友好集成,特别优化用于处理结构化数据 (如 JSON, CSV, XML 等), REST APIs 以及对象模型。它包含一个命令行 Shell、一个关联的脚本语言以及一个用于处理 cmdlets 的框架。PowerShell 就相当于 Linux 下的 Bash 以及 Shell 脚本编程语言。Bash | PowerShell | Description |
---|
ls | dir, Get-ChildItem | List files and folders |
tree | dir -Recurse | List all files and folders |
cd | cd, Set-Location | Change directory |
pwd | pwd, $pwd, Get-Location | Show working directory |
clear, Ctrl+L, reset | cls, clear | Clear screen |
mkdir | New-Item -ItemType Directory | Create a new folder |
touch test.txt | New-Item -Path test.txt | Create a new empty file |
cat test1.txt test2.txt | Get-Content test1.txt, test2.txt | Display files contents |
cp ./source.txt ./dest/dest.txt | Copy-Item source.txt dest/dest.txt | Copy a file |
cp -r ./source ./dest | Copy-Item ./source ./dest -Recurse | Recursively copy from one folder to another |
mv ./source.txt ./dest/dest.txt | Move-Item ./source.txt ./dest/dest.txt | Move a file to other folder |
rm test.txt | Remove-Item test.txt | Delete a file |
rm -r <folderName> | Remove-Item <folderName> -Recurse | Delete a folder |
find -name build* | Get-ChildItem build* -Recurse | Find a file or folder starting with 'build' |
grep -Rin "sometext" --include="*.cs" | Get-ChildItem -Recurse -Filter *.cs | Select-String -Pattern "sometext" | Recursively case-insensitive search for text in files |
6、Starship Shell — Shell 自定义提示符工具授权协议:ISC
操作系统:跨平台
项目地址:https://www.oschina.net/p/starshipStarship 是一个用 Rust 编写的开源项目,它可以帮助你建立一个 精简、快速、可定制的 shell 提示符。无论你是使用 bash、fish、还是 Windows 上的 PowerShell,抑或其他 shell,你都可以利用 Starship 来定制外观。Startship 专注于为你提供一个精简的、快速的、有用的默认 shell 提示符。它甚至会记录并显示执行一个命令所需的时间。7、Tabby — 基于 TypeScript 的现代化终端授权协议:MIT
操作系统:跨平台
项目地址:https://www.oschina.net/p/tabbyTabby(原名 Terminus)是一个高度可配置的终端模拟器、SSH 和串行客户端,适用于 Windows、macOS 和 Linux。授权协议:GPLv2
操作系统:OS X
项目地址:https://www.oschina.net/p/iterm2iTerm2 是 iTerm 的后继者,也是 Terminal 的替代者。这是一款用于 macOS 的终端模拟器,支持窗口分割、热键、搜索、自动补齐、无鼠标复制、历史粘贴、即时重播等功能特性,适用于 MacOS 10.10 及以上版本。9、Xfce Terminal — 现代化终端模拟器操作系统:Linux
项目地址:https://www.oschina.net/p/xfce-terminalXfce Terminal 是一个轻量级和易于使用的终端模拟器应用程序,具有许多高级功能,包括下拉、标签、无限滚动、全色彩支持、可修改字体、透明背景等。10、Konsole — KDE Plasma 桌面终端工具授权协议:GPL
操作系统:Linux
项目地址:https://www.oschina.net/p/konsoleKonsole 是一个自由开源的虚拟终端,它是 KDE 的一部分。功能包括:带标签的终端,标签标题根据终端中的当前活动动态自动更新;半透明背景;分割检视模式;目录和 SSH 书签;可定制配色方案;可定制键盘操作方式等。11、Hyper — 基于 Web 技术实现的命令行终端工具
授权协议:MIT
操作系统:跨平台
项目地址:https://www.oschina.net/p/hypertermHyper 是一款 JS / HTML/ CSS 终端工具。该项目旨在为用户创建一个美观的、易于扩展的命令行接口工具,并且构建一个开放式 Web 标准。在保证速度和稳定性的同时,Hyper 希望给用户提供一些 API 接口,供用户自由扩展。12、PuTTY — 经典远程登录客户端
授权协议:MIT
操作系统:Windows
项目地址:https://www.oschina.net/p/puttyPuTTY 是一款集成虚拟终端、系统控制台和网络文件传输为一体的自由开源程序。它支持多种网络协议,包括 SCP,SSH,Telnet,rlogin 和原始的套接字连接,它也可以连接到串行端口。其软件名字 “PuTTY” 并没有特殊含义。
开源中国订阅中心,目前有每周开源热点、每月《开源观止》等内容。更多符合订阅需求的内容正在策划中~点这里 ↓↓↓ 关注✔ 标星⭐ 订阅下期“Awesome软件”